using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using Tavis.Interfaces;

namespace RESTAgent.Hal.Tests.Fakes {
    public class HypermediaContentWrapper : IHypermediaContent {

        private HttpContent _Content;

        public HypermediaContentWrapper(HttpContent content) {
            _Content = content;
        }

        public string MediaType {
            get { return _Content.Headers.ContentType.MediaType; }
        }

    	public Exception Exception
    	{
    		get { throw new NotImplementedException(); }
    	}

    	public object Value {
    		get { throw new NotImplementedException(); }
    	}


    	public T GetLink<T>(string anchor) where T : ILink {
            throw new NotImplementedException();
        }

        public ILink GetLink(string relation, string anchor) {
            throw new NotImplementedException();
        }

        public IEnumerable<T> GetLinks<T>(string anchor) where T : ILink {
            throw new NotImplementedException();
        }


    	public IEnumerable<ILink> GetLinks(string relation, string anchor)
    	{
    		throw new NotImplementedException();
    	}


    	public IEnumerable<ILink> GetHeaderLinks() {
    		throw new NotImplementedException();
    	}


    	public HttpContentHeaders Headers {
            get { return _Content.Headers; }
        }

    	public HypermediaState State
    	{
    		get { throw new NotImplementedException(); }
    	}
    }
}
